var a = 10;
function test() {
  console.log(a);
  a = 100;
  console.log(this.a);
  var a; // 如果局部变量与全局变量同名时，全局变量不会作用到局部变量
  console.log(a);
}
test();
// undefined 10 100



// es5 预解析顺序  var  function(){}
// 预解析执行过程
// var a;
// function test() {}
// 逐行解析
// test()
// 预解析
// a = 10;
// var a;
// console.log(a);
// a = 100;
// console.log(this.a);
// console.log(a);